

#ifndef _UCUTIL_H
#define _UCUTIL_H

#include <stddef.h>
#include "zacadstrc.h"

#pragma pack (push, 8)

bool              ucutSplitString(
                      size_t &      numLeftBytes,
                      const ZTCHAR *& pRight,
                      const ZTCHAR  * source,
                      unsigned int  delimiter);

void              ucutTrimWhiteSpace(ZTCHAR * pStr);

bool              ucutWcMatchEx(
                      const ZTCHAR * string,
                      const ZTCHAR * pattern,
                      bool         ignoreCase);

size_t            ucutXStrLength(const ZTCHAR * str);

Ucad::ErrorStatus ucutXStrNormalize(
                      ZTCHAR *& pStr,
                      bool preserveCase);

inline Ucad::ErrorStatus
ucutXStrUppercase(ZTCHAR *& pStr)
{ return ucutXStrNormalize(pStr, false); }

#pragma pack (pop)
#endif 
